iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 1
3

https://ithelp.ithome.com.tw/upload/images/20190903/201158238Zp4G21cxc.png

前言

之前因為一個因緣際會買了Minecraft模組設計這本書,但卻從2年前買了之後就一直放著,直到最近在與朋友聊天的時候,偶然聊到"麥塊"這個話題,才赫然想起了這本書。已經讓IT邦幫忙解決了我很多工作上的技術問題,這一次,想要從比較輕鬆一點的方向來寫一系列的遊戲模組設計文章,邊寫邊玩。

這次發文的主題是如何設計遊戲,在Minecraft的世界裡我的資歷尚淺。若關於遊戲介紹敘述有誤的地方歡迎各位大力指正/images/emoticon/emoticon41.gif

注:以下所提到的Minecraft(台譯:當個創世神、麥塊)模組的開發指的是在Minecraft Forge的工具下進行。

開發環境準備 (Windows)

  1. 安裝Java 環境:Oracle Java 1.8.0_221
    開發模組會需要使用Java來開發,這裡我們直接使用Oracle Java
  2. 安裝IDE:Intellij IDE Community 2019.2
    開發模組使用的IDE。這裡使用的是Intellij 2019.2的版本,你也可以自行選擇喜歡的版本
    • 下載IDE (請選擇IDE bundle JBR 8)
      https://ithelp.ithome.com.tw/upload/images/20190904/201158238tDmtKHgQ1.png
    • 安裝與啟動都使用預設值即可
    • 進入起始畫面,這裡先不要關閉視窗,我們等等會用上
      https://ithelp.ithome.com.tw/upload/images/20190904/20115823sGpBHiMaCT.png
  3. 安裝遊戲開發模組:Minecraft Forge 1.8
    • Minicraft Forge 1.8 下載網址,我們下載穩定版本1.8 - 11.14.4.1563。這裡請將Windows InstallerMdk兩個檔案都下載下來
      https://ithelp.ithome.com.tw/upload/images/20190904/20115823zKvwb8BWqY.png
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823N0Tihd87bJ.png
    • 下載完成後,先解壓縮forge-1.8-11.14.4.1563-mdk.zip壓縮檔內所有檔案到空的資料夾下
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823vvVBvCroUr.png
    • 由於我們需要開發的模組並不包含Minecraft runtime所需要的套件,這裡有一個小方法
      • 進入Minecraft官網下載啟動程式
        https://ithelp.ithome.com.tw/upload/images/20190905/20115823S4TyjYB9hS.png
      • 直接按照預設安裝,然後啟動遊戲
      • 等待下載資源需要一點時間,接著進入到Minecraft畫面後,請直接關閉畫面
        https://ithelp.ithome.com.tw/upload/images/20190905/20115823gS6qFvrZYi.png
      • 這時候應該會在你的%APPDATA% (以我的電腦此目錄在C:\Users\SamCho\AppData\Roaming)下看到產生".minecraft"檔案。未來下載各種模組所需要的資源都會放在這個目錄下
    • 執行剛剛下載的forge-1.8-11.14.4.1563-installer-win.exe檔案,選擇Install client,按下確定
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823dGyihItd7E.png
    • 等待下載完成需要的檔案後,完成模組環境準備
  4. 匯入專案到Intellij IDE
    • 回到IDE畫面,點選Import Project -> 選擇剛才解壓縮mdk的目錄下的build.gradle檔案
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823jO6ipCJrtT.png

      https://ithelp.ithome.com.tw/upload/images/20190905/20115823WwAG3oXobA.png

    • Import會需要一點時間啟動,當你的畫面下方出現successful字樣後,點選右邊的Gradle頁籤 -> Tasks -> forgegradle -> setupDecompWorkspace
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823FpkFOuPFWm.png

      https://ithelp.ithome.com.tw/upload/images/20190905/20115823bGLOR3mThH.png

    • 會出現一些404訊息不管他,只要有出現BUILD SUCCESSFUL即可
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823OpV6oyL3Ud.png

    • 再次點選Gradle Tasks下的genIntellijRuns,一樣只要出現BUILD SUCCESSFUL即可 (這裡錯誤的訊息應該也只有download 404才是正常的)
      https://ithelp.ithome.com.tw/upload/images/20190905/20115823lPDXENZDkE.png

      https://ithelp.ithome.com.tw/upload/images/20190905/201158231q1sXvNW38.png

  5. 至此你已經完成Minecraft Forge模組開發的環境準備工作了!花了這麼多時間,一定要先玩看看什麼是Minecraft (若你曾經玩過,這裡對你來說應該不陌生)
    • 一樣在IDE的Gradle Tasks -> forgegradle -> runClient連點兩下執行
      https://ithelp.ithome.com.tw/upload/images/20190905/201158239maq6rHZiN.png

你可以點選Singleplayer -> Create New World試著玩看看,我們明天會帶各位稍微了解一下Minecraft的世界觀。

*注:如果你無法正常透過runClient啟動,請嘗試以下的Gradle Tasks指令組合

  • build -> clean
  • forgegradle -> setupDecompWorkspace
  • forgegradle -> getIntellijRuns
  • forgegradle -> runClient

下一篇
[Day2] 歡迎來到孤島
系列文
[Minecraft - 當個創世神] 從玩遊戲到設計遊戲30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
Capillary J
iT邦新手 4 級 ‧ 2019-09-16 10:23:15

酷喔!之前一直很想研究,鐵人賽剛好有人寫
期待!

感謝支持~
內容如果有誤還請不吝指正

另外,若對某些模組開發的內容感興趣也歡迎留言討論喔!

1
dragonH
iT邦超人 5 級 ‧ 2019-09-16 10:28:48

我有預感這個系列會跟

卡米狗一樣紅/images/emoticon/emoticon32.gif

稍微看了一下卡米狗的介紹 (我是第一次聽到這個名詞!)
個人淺見...我應該沒辦法達到那種程度/images/emoticon/emoticon01.gif

這個系列文會從模組開發基礎開始慢慢寫下去,但卡米狗有給我一些未來寫模組的點子...若有時間我再放進來

0
月湖 (若虛)
iT邦新手 2 級 ‧ 2019-09-17 23:47:56

哦哦哦!期待很久的這個題目終於開始開賽了!
原本以為會是 bukkit plugin,原來是 forge mods 呀。不管是哪個,一樣令我感到興奮!w

感謝支持~
若有對某個bukkit plugin感興趣,也歡迎留言在下方
未來有時間我會想嘗試看看用Mod來完成一樣的功能

0
wty81213
iT邦新手 5 級 ‧ 2019-09-22 22:58:33

以前也有一段時間在玩這個遊戲XD

0
wty81213
iT邦新手 5 級 ‧ 2019-09-22 22:59:26

之後有時間可以按照你的教學來研究看看

謝謝支持~
如果有疑問的地方歡迎隨時提出~

wty81213 iT邦新手 5 級 ‧ 2019-09-23 22:48:39 檢舉

okok

0
b4106702
iT邦新手 5 級 ‧ 2019-11-15 19:25:36

請問一下為何選擇1.8做為開發版本?我可以用最新的1.14嗎?

當然可以~但Minecraft版本間的差異有點大 (1.8 -> 1.14更是有顯著差異);你會需要將系列文中的方法自行修改成對應的1.14版本的方法。

會用1.8版主要原因有兩個:

  1. 撰寫此系列用的書籍參考是使用1.8版
  2. Minecraft論壇上大多數模組還是使用舊版(1.7, 1.8)居多

還是建議使用1.14以上 現在1.12已經不被Forge支援 而且非常多的東西被改寫及重命名

我要留言

立即登入留言